import axios from 'axios';
import Vue from 'vue';
const v = new Vue();


let header = {
    'Accept': 'application/json',
    'Content-Type': 'application/json',
    'x-requested-with': 'fetch'
};



export default function http (params) {
    let url = ''
    if (process.env.NODE_ENV === 'development') {
        url = process.env.VUE_APP_BASE_API
    } else if (process.env.NODE_ENV === 'production') {
        url = process.env.VUE_APP_BASE_API
    }
    // 重置路径代理
    url += params.url

    return new Promise((resolve, reject) => {
        axios({
            // `url` 是用于请求的服务器 URL
            url: url,
            // `headers` 是即将被发送的自定义请求头
            headers: header,
            // `method` 是创建请求时使用的方法
            method: params.method,
            // `data` 是作为请求主体被发送的数据
            // 只适用于这些请求方法 'PUT', 'POST', 和 'PATCH'

            data: params.data,
        }).then(r => {
            // 请求失败
            if (r.status !== 200) {
                v.$confirm(`${r.config.url}接口错误`, '提示', {
                    confirmButtonText: '确定',
                    cancelButtonText: '取消',
                    type: 'error',
                    center: true
                }).then(() => {

                }).catch(() => {

                });
                reject()
            } else {
                resolve({ data: r.data, status: r.status })
            }
        })
    })


}

